home *** CD-ROM | disk | FTP | other *** search
- public class TimeBasedComp extends ComponentApp {
- int maxWidth;
- int maxHeight;
- int numImages;
- static final int MaxImages = 24;
- DDrawJava theJavaApplet;
- int[] imageNames;
- int[] imageURLs;
- int[] imageStarts;
- DAssetManager assetMan;
- int[] imgHeights;
- int[] imgWidths;
-
- public String PropertyListener(String var1, String var2, int var3, int var4, IDInspector var5) {
- if (var3 == 1) {
- if (var1.compareTo("Number of Images") == 0) {
- return Integer.toString(this.numImages);
- }
-
- for(int var6 = 0; var6 < this.numImages; ++var6) {
- if (var1.compareTo("Image " + Integer.toString(var6 + 1)) == 0) {
- return Integer.toString(this.imageNames[var6]);
- }
-
- if (var1.compareTo("URL for Image " + Integer.toString(var6 + 1)) == 0) {
- return Integer.toString(this.imageURLs[var6]);
- }
-
- if (var1.compareTo("Start Time for Image " + Integer.toString(var6 + 1)) == 0) {
- return Integer.toString(this.imageStarts[var6]);
- }
- }
- } else if (var1.compareTo("Number of Images") == 0) {
- int var12 = Integer.parseInt(var2, 10);
- if (var12 > 24) {
- var12 = 24;
- }
-
- if (var12 < this.numImages) {
- new DImage();
- this.maxHeight = this.maxWidth = 0;
-
- for(int var7 = 0; var7 < var12; ++var7) {
- if (this.imgHeights[var7] > this.maxHeight) {
- this.maxHeight = this.imgHeights[var7];
- }
-
- if (this.imgWidths[var7] > this.maxWidth) {
- this.maxWidth = this.imgWidths[var7];
- }
- }
-
- this.theJavaApplet.SetSize(this.maxWidth, this.maxHeight);
- }
-
- while(var12 < this.numImages) {
- this.assetMan.RemoveAsset(this.imageNames[this.numImages += -1]);
- }
-
- this.numImages = var12;
- this.theJavaApplet.AddParam(var1, "String\u0000", var2);
- } else {
- for(int var13 = 0; var13 < this.numImages; ++var13) {
- if (var1.compareTo("Image " + Integer.toString(var13 + 1)) == 0) {
- if (this.imageNames[var13] != 0) {
- this.assetMan.RemoveAsset(this.imageNames[var13]);
- }
-
- this.imageNames[var13] = Integer.parseInt(var2, 10);
- String var14 = this.assetMan.GetAssetLocation(this.imageNames[var13], 1, 1);
- this.theJavaApplet.setImageFile(var14);
- DImage var8 = new DImage();
- var8.setImageFile(var14);
- IDSize var9 = var8.getSize();
- this.imgHeights[var13] = var9.getHeight();
- this.imgWidths[var13] = var9.getWidth();
- this.maxHeight = this.maxWidth = 0;
-
- for(int var10 = 0; var10 < this.numImages; ++var10) {
- if (this.imgHeights[var10] > this.maxHeight) {
- this.maxHeight = this.imgHeights[var10];
- }
-
- if (this.imgWidths[var10] > this.maxWidth) {
- this.maxWidth = this.imgWidths[var10];
- }
- }
-
- this.theJavaApplet.SetSize(this.maxWidth, this.maxHeight);
- }
-
- if (var1.compareTo("URL for Image " + Integer.toString(var13 + 1)) == 0) {
- this.imageURLs[var13] = Integer.parseInt(var2, 10);
- }
-
- if (var1.compareTo("Start Time for Image " + Integer.toString(var13 + 1)) == 0 && var13 != 0) {
- this.imageStarts[var13] = Integer.parseInt(var2, 10);
- if (this.imageStarts[var13] > 23) {
- this.imageStarts[var13] = 23;
- } else if (this.imageStarts[var13] < 0) {
- this.imageStarts[var13] = 0;
- }
- }
- }
- }
-
- return "";
- }
-
- public void onCopy() {
- int[] var1 = this.imageNames;
- int[] var2 = this.imageURLs;
- this.imageNames = new int[24];
- this.imageURLs = new int[24];
-
- for(int var3 = 0; var3 < this.numImages; ++var3) {
- this.imageNames[var3] = var1[var3];
- this.imageURLs[var3] = var2[var3];
- if (this.imageNames[var3] != 0) {
- this.assetMan.CopyAsset(this.imageNames[var3]);
- }
-
- if (this.imageURLs[var3] != 0) {
- this.assetMan.CopyAsset(this.imageURLs[var3]);
- }
- }
-
- }
-
- public String onInstall(DAssetManager var1, String var2) {
- this.assetMan = var1;
- return "Time Based Picture";
- }
-
- protected void finalize() {
- for(int var1 = 0; var1 < this.numImages; ++var1) {
- if (this.imageNames[var1] != 0) {
- this.assetMan.RemoveAsset(this.imageNames[var1]);
- }
- }
-
- }
-
- public void onUnInstall(DAssetManager var1) {
- }
-
- public void onPublish(DAssetManager var1, int var2) {
- if (var2 == 1) {
- for(int var3 = 0; var3 < this.numImages; ++var3) {
- String var4 = this.assetMan.GetAssetLocation(this.imageNames[var3], var2, 0);
- var4.replace('|', ':');
- this.theJavaApplet.AddParam("Image " + Integer.toString(var3 + 1), "String\u0000", "file:///" + var4);
- }
- } else {
- for(int var11 = 0; var11 < this.numImages; ++var11) {
- this.theJavaApplet.AddParam("Image " + Integer.toString(var11 + 1), "String\u0000", this.assetMan.GetAssetRelativeLocation(this.imageNames[var11], var2, 0));
- }
- }
-
- for(int var12 = 0; var12 < this.numImages; ++var12) {
- String var14;
- if (this.imageURLs[var12] != 0) {
- var14 = this.assetMan.GetAssetLocation(this.imageURLs[var12], var2, 1);
- } else {
- var14 = "";
- }
-
- this.theJavaApplet.AddParam("URL for Image " + Integer.toString(var12 + 1), "String\u0000", var14);
- this.theJavaApplet.AddParam("Start Time for Image " + Integer.toString(var12 + 1), "String\u0000", Integer.toString(this.imageStarts[var12]));
- }
-
- this.theJavaApplet.AddParam("Image Width", "String\u0000", Integer.toString(this.maxWidth));
- this.theJavaApplet.AddParam("Image Height", "String\u0000", Integer.toString(this.maxHeight));
- IDRect var13 = this.theJavaApplet.getObjectRect();
- this.theJavaApplet.AddParam("X Position", "String\u0000", Integer.toString(var13.getLeft()));
- this.theJavaApplet.AddParam("Y Position", "String\u0000", Integer.toString(var13.getTop() + 7));
- IDLayout var15 = this.theJavaApplet.getLayout();
- IDSite var5 = var15.getSite();
- IDStyle var6 = var5.getCurrentStyle();
- int var7 = var15.getBackgroundStyle();
- if (var7 != 0) {
- if (var7 == 1) {
- this.theJavaApplet.AddParam("BackgroundColor", "String\u0000", Integer.toString(var15.getBackgroundColor()));
- return;
- }
-
- if (var7 == 2) {
- int var8 = this.assetMan.AddAsset(var15.getBackgroundImage(), "Image\u0000", "");
- String var9 = this.assetMan.GetAssetRelativeLocation(var8, var2, 1);
- if (var2 == 1) {
- var9 = "file:///" + var9;
- }
-
- this.theJavaApplet.AddParam("BackgroundImage", "String\u0000", var9);
- return;
- }
- } else {
- var7 = var6.getBackgroundStyle();
- if (var7 == 1) {
- this.theJavaApplet.AddParam("BackgroundColor", "String\u0000", Integer.toString(var6.getBackgroundColor()));
- return;
- }
-
- if (var7 == 2) {
- int var17 = this.assetMan.AddAsset(var6.getBackgroundImage(), "Image\u0000", "");
- String var18 = this.assetMan.GetAssetRelativeLocation(var17, var2, 1);
- if (var2 == 1) {
- var18 = "file:///" + var18;
- }
-
- this.theJavaApplet.AddParam("BackgroundImage", "String\u0000", var18);
- }
- }
-
- }
-
- public void onDrop(IDLayout var1, IDRect var2, int var3) {
- if (var3 == 1) {
- this.imgHeights = new int[50];
- this.imgWidths = new int[50];
- this.maxWidth = 0;
- this.maxHeight = 0;
- this.numImages = 3;
- this.imageURLs = new int[24];
- this.imageNames = new int[24];
- this.imageStarts = new int[24];
- int var6 = 0;
-
- do {
- this.imageNames[var6] = 0;
- this.imageURLs[var6] = 0;
- this.imageStarts[var6] = var6++;
- } while(var6 < 24);
-
- this.theJavaApplet = new DDrawJava();
- this.theJavaApplet.setImageFile(this.theJavaApplet.getCodeBase() + "banner.gif");
- this.theJavaApplet.setAppletFileName(this.theJavaApplet.getCodeBase() + "TimeBased.class");
- this.theJavaApplet.setStretch(1);
- this.theJavaApplet.setAltTag("Time Based Loader");
- int var4 = var2.getLeft();
- int var5 = var2.getTop();
- var1.AddObject(this.theJavaApplet);
- this.theJavaApplet.AddParam("Number of Images", "String\u0000", "3");
- this.imageNames[0] = this.assetMan.AddAsset(this.theJavaApplet.getCodeBase() + "banner.gif", "Image\u0000", "");
- this.imageNames[1] = this.assetMan.AddAsset(this.theJavaApplet.getCodeBase() + "banner2.gif", "Image\u0000", "");
- this.imageNames[2] = this.assetMan.AddAsset(this.theJavaApplet.getCodeBase() + "banner3.gif", "Image\u0000", "");
- DImage var9 = new DImage();
- var9.setImageFile(this.theJavaApplet.getCodeBase() + "banner.gif");
- IDSize var7 = var9.getSize();
- if (var7.getHeight() > this.maxHeight) {
- this.maxHeight = var7.getHeight();
- if (var7.getWidth() > this.maxWidth) {
- this.maxWidth = var7.getWidth();
- }
-
- this.theJavaApplet.SetPositionRect(var4, var5, var4 + this.maxWidth, var5 + this.maxHeight);
- } else if (var7.getWidth() > this.maxWidth) {
- this.maxWidth = var7.getWidth();
- this.theJavaApplet.SetPositionRect(var4, var5, var4 + this.maxWidth, var5 + this.maxHeight);
- }
-
- this.imgHeights[0] = this.imgHeights[1] = this.imgHeights[2] = this.maxHeight;
- this.imgWidths[0] = this.imgWidths[1] = this.imgWidths[2] = this.maxWidth;
- }
- }
-
- public void onInspect(CStringArray var1, CStringArray var2) {
- var1.Set("Number of Images");
- var2.Set("Collection\u0000");
-
- for(int var3 = 0; var3 < this.numImages; ++var3) {
- var1.Set("Image " + Integer.toString(var3 + 1));
- var2.Set("Image\u0000");
- var1.Set("URL for Image " + Integer.toString(var3 + 1));
- var2.Set("Link\u0000");
- var1.Set("Start Time for Image " + Integer.toString(var3 + 1));
- var2.Set("Set(12am|1am|2am|3am|4am|5am|6am|7am|8am|9am|10am|11am|12pm|1pm|2pm|3pm|4pm|5pm|6pm|7pm|8pm|9pm|10pm|11pm)");
- }
-
- }
- }
-